package com.steel.yfmall.cloud.assistant.utils.zg;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

/**
 * @author yuchaohua
 * @version V1.0
 * @Title: ZgParamUtils
 * @Package com.work.shop.cloud.out.bean
 * @Description: (用一句话描述该文件做什么)
 * @date 2020/9/11 14:15
 */
public class ZgParamUtils {


    /**
     * json小写转大写
     *
     * @return JSONObject
     */
    public static JSONObject transToUpperObject(String json) {
        JSONObject returnObject = new JSONObject();
        JSONObject jsonObject = JSON.parseObject(json);
        for (String key : jsonObject.keySet()){
            Object object = jsonObject.get(key);
            if (object.getClass().toString().endsWith("JSONObject")) {
                returnObject.put(key.toUpperCase(), transToUpperObject(object.toString()));
            } else if (object.getClass().toString().endsWith("JSONArray")) {
                returnObject.put(key.toUpperCase(), transToArray(jsonObject.getJSONArray(key).toString()));
            }else{
                returnObject.put(key.toUpperCase(), object);
            }
        }
        return returnObject;
    }

    /**
     * jsonArray转jsonArray
     *
     * @return JSONArray
     */
    public static JSONArray transToArray(String jsonArray) {
        JSONArray returnArrayObject = new JSONArray();
        JSONArray jsonarray = JSON.parseArray(jsonArray);
        for (int i = 0; i < jsonarray.size(); i++) {
            Object jArray = jsonarray.getJSONObject(i);
            if (jArray.getClass().toString().endsWith("JSONObject")) {
                returnArrayObject.add(transToUpperObject( jArray.toString()));
            } else if (jArray.getClass().toString().endsWith("JSONArray")) {
                returnArrayObject.add(transToArray(jArray.toString()));
            }
        }
        return returnArrayObject;
    }


}
